Video graphic circuits are known to generate pixel information for objects to be displayed on a computer screen, monitor, or television. The source for the object may be television broadcasts, cable television transmissions, satellite television transmissions, computer programs, video games, web pages, and so on. For computer screens, video graphic circuits partition each of the objects to be displayed into triangles. Each triangle is stored as three vertexes and corresponding display parameters for each vertex. The corresponding display parameters include color parameters (red, green, blue), display, or pixel location parameters (x,y,z), and texture parameters (s,t,w).
For the corresponding display parameters, a video graphics circuit calculates slopes and associated display parameters for each part within the triangle based on the slopes and corresponding display parameters. The slopes are associated display parameters and are stored in a triangle descriptor list, which is subsequently used to calculate pixel information.
When a two-dimensional objects, or one triangle, is to be displayed, there are no unnecessary steps to the process described above. When more than one object is to be displayed and the objects overlap, there are unnecessary steps because pixel information is calculated for each triangle of each object. When all of the pixel information for each object is calculated, a comparison is performed to determine which object is in the foreground. For the object that is in the background with respect to another object, the pixel information for the portion of the object that is overlapped is discarded. Thus, the calculation of such pixel information was unnecessary and adversely affects the efficiency of the video graphics circuit.
If only a small portion of an object is overlapped, the amount of unnecessary pixel information calculation is minimal and has little adverse affects on the efficiency of the video graphics circuit. If, however, the object has substantial overlapped portion, then the number of unnecessary calculations increases and the efficiency of the video graphics circuit is affected. The problem is compounded when there are several objects that overlap where only one of them will be in the foreground and displayed in its entirety. For example, assume that several faces are to be displayed and they overlap. To begin the display process, the video graphics circuit calculates the slopes and associated display premise for each triangle of a face, which includes up to 20,000 triangles, and stores the value in the triangle descriptor list. Next, the video graphics circuit calculates pixel information for a face based on the information in the triangle descriptor list and stores the pixel information. The process is repeated for each face to be displayed. Once all of the pixel information is generated, the video graphics circuit compares the component of the faces to determine which one is in the foreground in the overlapped areas.
As such, all of the calculations to obtain the pixel information in the overlapped portions of the objects not in the foreground is unnecessary adversely affecting the efficiency of the video graphics circuit. Therefore, a need exists for a method and apparatus that avoids unnecessary pixel information calculation and thereby improving the efficiency of the video graphics circuits.